<?php

class Examen extends CI_Controller {
    
    function __construct() {
        parent::__construct();
        $this->load->helper(array('form', 'url'));
    }

     
    public function index()
    {
        $login=$this->loggedIn();
        $args['title'] = 'Atención ambulatoria';
        $args['content'] = 'serviciosA/ambulatoria';


        //Junior para que usas esto? . Lo comente porque no se esta usando.
        //$session_data = $this->session->userdata['logged_in'];
        $args['username'] = $login['username'];
        $this->load->view('view',$args);
    }
    
      public function lista_examenes()
    {
        $login=$this->loggedIn();
        
        $this->load->model('Cita_model');
        $pacientes = $this->Cita_model->buscarPacientesExamenesProcedimiento();
            
        $args['title'] = 'Exámenes';
        $args['content'] = 'examen/lista_examenes';
        $args['pacientes'] = $pacientes;

        $args['username'] = $login['username'];
        
        $this->load->view('view',$args);
        
    }

    function mis_pacientes() {
        $login=$this->loggedIn();
        
        $this->load->model('Cita_model');
        $pacientes = $this->Cita_model->buscarPacientes();
            
        $args['title'] = 'Mis citas';
        $args['content'] = 'consulta/lista_pacientes';
        $args['pacientes'] = $pacientes;

        $args['username'] = $login['username'];
        
        $this->load->view('view',$args);
    }
    
    public function lista_citas()
    {
        $login=$this->loggedIn();
        
        $this->load->model('Cita_model');
        $pacientes = $this->Cita_model->buscarPacientesExamenesCita();
            
        $args['title'] = 'Exámenes';
        $args['content'] = 'examen/lista_citas';
        $args['pacientes'] = $pacientes;

        $args['username'] = $login['username'];
        
        $this->load->view('view',$args);
        
    }
    
    public function registrarProcedimiento($paso,$idcita)
    {
        
     //    $this->load->model('Persona_model');
     //   $persona = $this->Persona_model->buscarPersona($codigo);
       
        $login=$this->loggedIn();
        
        $this->load->model('Cita_model');
        $cita = $this->Cita_model->buscarCitaAmbulatoria($idcita);
        
        $args['title'] = 'Resultado Examen';
        $args['content'] = 'examen/registrarProcedimiento';
        $args['cita'] = $cita;
     //   $args['persona'] = $persona;

        $args['username'] = $login['username'];
        $session_data = $this->session->userdata['logged_in'];


        $this->load->view('view',$args);
        
    }
    
    
    public function registrarExamen($paso,$idcita)
    {
       
        $login=$this->loggedIn();
        $this->load->model('Examen_model');
//        $this->load->model('Persona_model');
//        $persona = $this->Persona_model->buscarPersona($codigo);
        $this->load->model('Consulta_model');
        $this->load->model('Cita_model');
        $cita = $this->Cita_model->buscarCitaAmbulatoria($idcita);
        
//        $this->load->model('Enfermedad_model');
//        $enfermedades = $this->Enfermedad_model->listarEnfermedades();
        
        $args['title'] = 'Resultado Examen';
         if ($paso==1){
            $args['content'] = 'examen/registrarResultado';
            $campos = $this->Consulta_model->obtenerPlantilla($cita['Especialidad']);
            $args['campos'] = $campos;
            } 
        else{
            $args['content'] = 'consulta/registrarTratamiento';
            $this->load->model('Tratamiento_model');
            $frecuencias = $this->Tratamiento_model->listarFrecuencias();
            $args['frecuencias'] = $frecuencias;
            
            $medicamentos = $this->Tratamiento_model->listarMedicamentos();
            $args['medicamentos'] = $medicamentos;
        }
        //$args['persona'] = $persona;
      //  $args['enfermedades'] = $enfermedades;
        $args['cita'] = $cita;
        
        $procedimientos=null;
        $args['procedimiento'] =$procedimientos;
        
        $args['username'] = $login['username'];
        $session_data = $this->session->userdata['logged_in'];

        $anexos=null;
        $args['anexos']=$anexos;
                        
        $this->load->view('view',$args);
        
    }

    
    public function registrarConsulta($paso,$idcita)
    {
       
        $login=$this->loggedIn();
        
//        $this->load->model('Persona_model');
//        $persona = $this->Persona_model->buscarPersona($codigo);
        
        $this->load->model('Cita_model');
        $cita = $this->Cita_model->buscarCitaAmbulatoria($idcita);
        
        $this->load->model('Enfermedad_model');
        $enfermedades = $this->Enfermedad_model->listarEnfermedades();
        
        $args['title'] = 'Exámenes';
         if ($paso==1)
            $args['content'] = 'consulta/registrarConsulta';
        else{
            $args['content'] = 'consulta/registrarTratamiento';
            $this->load->model('Tratamiento_model');
            $frecuencias = $this->Tratamiento_model->listarFrecuencias();
            $args['frecuencias'] = $frecuencias;
            
            $medicamentos = $this->Tratamiento_model->listarMedicamentos();
            $args['medicamentos'] = $medicamentos;
        }
        //$args['persona'] = $persona;
        $args['enfermedades'] = $enfermedades;
        $args['cita'] = $cita;

        $args['username'] = $login['username'];
        $session_data = $this->session->userdata['logged_in'];


        $this->load->view('view',$args);
        
    }

    public function tratamiento()
    {
         
        $login=$this->loggedIn();
        $args['title'] = 'Atención ambulatoria';
        
        
        if ($this->input){
            $datos=array();
            $medicamentos=$this->input->get('medicamento');
            $frecuencia=$this->input->get('frecuencia');
            $periodicidad=$this->input->get('periodicidad');
            $dosis=$this->input->get('dosis');
            $indicaciones=$this->input->get('indicaciones');
            $proc=$this->input->get('procedimiento');
            $i=0;
            $resultado=true;
            foreach($medicamentos as $med){
                	 
                
                $datos=array(
                    'Procedimiento'=>$proc,
                    'Descripcion'=>$indicaciones[$i],
                    'Frecuencia'=>$frecuencia[$i],
                    'periodicidad'=>$periodicidad[$i],
                    'dosis'=>$dosis[$i],
                    'Producto'=>$med,
                    'TipoMedida'=>1,//cucharita
                    'Estado'=>'estadoFEO',
                    );
                $this->load->model('Tratamiento_model');
                
                $resultado=$resultado && $this->Tratamiento_model->nuevo($datos);
                $i++;
                
                
            }
            
         }
        
        $args['content'] = 'consulta/prueba';
        $args['username'] = $login['username'];
         
        if ($resultado)
            $this->session->set_flashdata('success',"Se guardó la atención con éxito");
        else
            $this->session->set_flashdata('error',"Lo sentimos T__T");
        $this->load->view('view',$args);
        
    }
    
   
    
    public function orden()
    {
        
        $codigo=$this->input->get('codigo'); 
        $procedimiento=$this->input->get('procedimiento'); 
        
        $this->load->model('Ambulatoria_model');
        $listatipoorden = $this->Ambulatoria_model->listarTipoOrden();
        
        $this->load->model('Ambulatoria_model');
        $listaorden = $this->Ambulatoria_model->listarOrden();
        
        
        $codigo= "PAC1";
        $procedimiento="6";
        
        $this->load->model('Paciente_Model');
        $paciente = $this->Paciente_Model->buscarPacientePorCodigo($codigo);
       
        
        $login=$this->loggedIn();
        
        $args['title'] = 'Orden médica';
        $args['content'] = 'ambulatoria/orden';
        $args['codigo'] = $codigo;
        $args['procedimiento'] = $procedimiento;
        $args['listatipoorden'] = $listatipoorden;
        $args['listaorden'] = $listaorden;
        $args['paciente'] = $paciente;

        
        $args['username'] =  $this->args['username'];//$login['username'];
        $session_data = $this->session->userdata['logged_in'];


        $this->load->view('view',$args);
        
    }
    
    
    function crearOrden() {
        $login=$this->loggedIn();
        
        $procedimiento=$this->input->get('procedimiento');         
        $orden=$this->input->get('orden'); 
        $indicaciones=$this->input->get('indicaciones');
        
        
        $this->load->model('Ambulatoria_model');
        $listaorden = $this->Ambulatoria_model->insert($procedimiento, $orden, $indicaciones);
        
        
            
        $args['title'] = 'Latisoft';
        $args['content'] = 'home';
       
     

        $args['username'] = $login['username'];
        
        $this->load->view('view',$args);
    }
    


    
    public function Registrar_examen()
    {
        $login=$this->loggedIn();
       
        $args['title'] = 'Exámenes';
        $args['content'] = 'ambulatoria/examen';
        
        $this->load->model('Cita_model');
        $cita = $this->Cita_model->buscarCitaExamen($idcita);
        $args['cita']=$cita;
        $args['username'] = $login['username'];
        
        $this->load->view('view',$args);
        
    }
    
    
    public function atencion(){
        $login=$this->loggedIn();
        $usuario=$this->session->userdata('logged_in');            
        $idPersona=$usuario['persona'];
        if ($this->input){
            $datos=array(
                    'PersonaP'=>$this->input->post('PersonaP'),
                    'Resultado'=>$this->input->post('Resultado'),
                    'PersonaD'=>$idPersona);
            $this->load->model('Examen_model');
            $this->load->model('Consulta_model');
            $this->load->model('Persona_model');
            
            $resultado=$this->Examen_model->nuevo($datos,$this->input->post('idCita'),$this->input->post('PersonaP'));
            
            $procedimiento = $this->Examen_model->procAsociado($this->input->post('idCita'));
            
            $nombredato = $this->input->post('nombredato');
            
            $persona=$this->Persona_model->obtenerPersona($this->input->post('PersonaP'));
           
            $mensaje="";
            $mensaje=$mensaje."Paciente: ".$persona['Nombres']." ".$persona['Apellido_Paterno']." ".$persona['Apellido_Materno']."\n";
            
            $j = 0;
            if (($this->input->post('dato'))) {
                
                $mensaje=$mensaje."\n";
                $datosReg = $this->input->post('dato');
                foreach ($datosReg as $dato) {
                    

                    $datosMet = array(
                        'Especialidad' => $this->input->post('Especialidad'),
                        'Valor' => $dato
                    );
                    $mensaje=$mensaje.$nombredato[$j].": ".$dato."\n";    
                    $j++;
                    $resultado = $resultado && $this->Consulta_model->nuevoDato($datosMet, $procedimiento, $j);
                }
            }
            
            if ($resultado){
                
                
                 $mensaje=$mensaje."\n"."Resultado: ".$this->input->post('Resultado');  

                
                $this->load->library('email');
                $this->email->set_newline("\r\n");
                
                //$this->email->initialize($config); 
                //var_dump($persona);
                if($persona['email']!=null){
                    
                    
                    $this->email->from('latisoft@latisoft.com', 'Hospital Latipsoh');
                    $this->email->to($persona['email']);
                    //$this->email->cc('otro@otro-ejemplo.com');
                    //$this->email->bcc('ellos@su-ejemplo.com');
                    $this->email->subject('Resultado de examen');
                    $this->email->message($mensaje);
                    $this->email->send();
                //echo $this->email->print_debugger();
                
                }
                
                $this->session->set_flashdata('success',"Se guardó la atención con éxito");
            }else
                $this->session->set_flashdata('error',"Lo sentimos");
          
        $this->load->model('Consulta_model');
        $this->load->model('Cita_model');
        $cita = $this->Cita_model->buscarCitaAmbulatoria($this->input->post('idCita'));
        
        
        $args['title'] = 'Resultado Examen';
         
            $args['content'] = 'examen/registrarResultado';
            $campos = $this->Consulta_model->obtenerPlantilla($cita['Especialidad']);
            $args['campos'] = $campos;
         
        $args['cita'] = $cita;

        $this->load->model('Consulta_Model');
        $procedimientos = $this->Consulta_Model->getExamenCompleto($procedimiento);
        
        $args['procedimiento']=$procedimientos;
        
        $args['username'] = $login['username'];
        $session_data = $this->session->userdata['logged_in'];

        $anexos=$this->Examen_model->obtenerAnexos($procedimiento);
        $args['anexos']=$anexos;
                        
        $this->load->view('view',$args);
           
        }
    }
    
     public function asistencia(){
        $login=$this->loggedIn();
        $usuario=$this->session->userdata('logged_in');            
        $idPersona=$usuario['persona'];
        if ($this->input){
            $datos=array(
                    'PersonaP'=>$this->input->post('PersonaP'),
                    'PersonaD'=>$idPersona);
            $this->load->model('Examen_model');
            $resultado=$this->Examen_model->asistenciaNueva($datos,$this->input->post('idCita'),$this->input->post('PersonaP'));
            
            if ($resultado)
                $this->session->set_flashdata('success',"El procedimiento se guardo con éxito");
            else
                $this->session->set_flashdata('error',"Los datos no fueron guardados");
            redirect(base_url().'examen/lista_citas','refresh');
           
        }
    }
    
    
    public function registrarTratamiento($codigo)
    {
        $login=$this->loggedIn();
        
        $this->load->model('Persona_model');
        $persona = $this->Persona_model->buscarPersona($codigo);
        
        $cita['Especialidad']="";
        
        $args['title'] = 'Atención ambulatoria';
        $args['content'] = 'consulta/registrarTratamiento';
        $args['mcodigo'] = $codigo;
        $args['cita'] = $cita;
        $args['persona'] = $persona;
        
        
        $args['username'] = $this->args['username'];//$login['username'];
        $session_data = $this->session->userdata['logged_in'];


        $this->load->view('view',$args);
        $login=$this->loggedIn();
        
        
    }
    
    function do_upload($idcita)
	{
            
                $login=$this->loggedIn();
        
                $this->load->model('Consulta_model');
                $this->load->model('Cita_model');
                $cita = $this->Cita_model->buscarCitaAmbulatoria($idcita);

                $args['title'] = 'Resultado Examen';
                
                    $args['content'] = 'examen/registrarResultado';
                    $campos = $this->Consulta_model->obtenerPlantilla($cita['Especialidad']);
                    $args['campos'] = $campos;
                    
              
                $args['cita'] = $cita;

                $args['username'] = $login['username'];
                
                $this->load->model('Consulta_Model');
                $this->load->model('Examen_model');
                
                $procedimiento = $this->Examen_model->procAsociado($idcita);
                        
                $procedimientos = $this->Consulta_Model->getExamenCompleto($procedimiento);

                $args['procedimiento']=$procedimientos;
        
                $session_data = $this->session->userdata['logged_in'];
        
		$config['upload_path'] = './documents/';
		$config['allowed_types'] = 'gif|jpg|png';
	
                $anexos=null;
                $args['anexos']=$anexos;
                
		$this->load->library('upload', $config);

		if ( ! $this->upload->do_upload())
		{
			//$error = array('error' => $this->upload->display_errors());
                        $this->session->set_flashdata('error',"Los datos no fueron guardados");
			$this->load->view('view', $args);
		}
		else
		{
                    
			$data = array('upload_data' => $this->upload->data());

                        
                        $detalle=$this->input->post("Detalle");
                        $file_name=$data['upload_data']['file_name'];
                        
                        $datosAnexo = array(
                        'Procedimiento' => $procedimiento,
                        'DescripcionRE' => $file_name,
                        'Adjunto' => $detalle
                        );
                        
                        //var_dump($datosAnexo);
                        
                        $resultado=$this->Examen_model->agregarAnexo($datosAnexo);
                        
                        $anexos=$this->Examen_model->obtenerAnexos($procedimiento);
                        $args['anexos']=$anexos;
                        
                        
                        
                        if ($resultado){
                            $this->session->set_flashdata('success',"El procedimiento se guardo con éxito");
                        }
//                        else if($file_name==""){
//                            $this->session->set_flashdata('error',"No ha seleccionado un archivo");
//                        }
                        else{
                            $this->session->set_flashdata('error',"Los datos no fueron guardados");                                 
                        }        
			$this->load->view('view', $args);
		}
	}
}

?>
